home *** CD-ROM | disk | FTP | other *** search
/ Amiga Collections: Franz PD / Franz PD Disk #062 (1990-04)(Amiga User Group Deutschland e.V.).zip / Franz PD Disk #062 (1990-04)(Amiga User Group Deutschland e.V.).adf / Rätzel / Kraftwerke&Häuser (.txt) < prev    next >
AmigaBASIC Source Code  |  1989-07-02  |  3KB  |  114 lines

  1.  
  2.   'Detlef Kornatz
  3.   'Feuerbachstrasse 6
  4.   'D-4300 Essen 1 
  5.   '*********************************************************************
  6.   SCREEN 2,640,240,4,2
  7.   WINDOW 2,"Kraftwerke+Häuser",,1,2
  8.   PALETTE 0,1,1,0.9
  9.   DEFINT a-z
  10. Text:
  11.   COLOR 8,0
  12.   LOCATE 2,4:PRINT "Sie sehen hier drei Kraftwerke                 und drei Häuser."
  13.   COLOR 5,0:LOCATE 2,34:PRINT "Strom,":COLOR 4,0:LOCATE 2,40:PRINT "Wasser,":COLOR 3,0:LOCATE 2,47:PRINT "Gas"
  14.   COLOR 8,0
  15.   LOCATE 4,4:PRINT "Alle Häuser müssen von den Kraftwerken versorgt werden."
  16.   LOCATE 6,4:PRINT "Versuchen Sie doch einmal,die Versorgungsleitungen mit der"
  17.   LOCATE 8,4:PRINT "der linken Maustaste zu legen.Nur ein Haken ist dabei,die"
  18.   LOCATE 10,4:PRINT"Leitungen dürfen sich nicht kreuzen.Viel Spass!"
  19. Kraftw:
  20.   LINE(30,100)-(40,130),5,bf
  21.   LINE(40,120)-(90,130),5,bf     'Strom
  22.   LINE(280,100)-(290,130),4,bf  
  23.   LINE(290,120)-(340,130),4,bf   'Wasser
  24.   LINE(530,100)-(540,130),3,bf
  25.   LINE(540,120)-(590,130),3,bf   'Gas
  26.     
  27.    a=50:aa=30:b=70:dd=200:d=180: c=300:cc=280:e=320: ee=550:f=530:ff=570 
  28. Haus:
  29.    COLOR 9,0
  30.    AREA (a,d) : AREA (aa,dd) :AREA (b,dd) : AREAFILL 
  31.    AREA (c,d) : AREA (cc,dd) :AREA (e,dd) : AREAFILL
  32.    AREA (ee,d) : AREA (f,dd) :AREA (ff,dd) : AREAFILL
  33.    LINE (aa,dd)-(100,220),15,bf
  34.    LINE (cc,dd)-(350,220),15,bf
  35.    LINE (f,dd)-(600,220),15,bf                              
  36. start:
  37.    LINE (500,60)-(590,75),13,bf 
  38.    LINE (500,60)-(590,75),5,b      
  39.    LINE (501,59)-(589,76),6,b           
  40.    LOCATE 9,65:PRINT "ZEICHNEN"
  41. maus:
  42.    WHILE 1
  43.    v= MOUSE(0)
  44.    IF MOUSE(0) = 0 THEN WEND
  45.    CALL maus(x,y)
  46.    IF x<500 OR x>590 THEN GOTO maus
  47.    IF y<60 OR y>75 THEN GOTO maus
  48.    SUB maus (x,y) STATIC
  49.    x = MOUSE(1)
  50.    y = MOUSE(2)
  51.    END SUB
  52.    GOSUB zeichnen    
  53. zeichnen:
  54.    CLS        
  55.    PALETTE 0,0,0,0
  56. Kraftwerke:
  57.   LINE(60,50)-(70,80),5,bf
  58.   LINE(70,70)-(120,80),5,bf    'Strom
  59.   LINE(280,50)-(290,80),4,bf  
  60.   LINE(290,70)-(340,80),4,bf   'Wasser
  61.   LINE(500,50)-(510,80),3,bf
  62.   LINE(510,70)-(560,80),3,bf   'Gas
  63.     
  64.    a=80:aa=60:b=100:dd=180:d=160: c=300:cc=280:e=320: ee=520:f=500:ff=540 
  65. Haeuser:
  66.    COLOR 9,0
  67.    AREA (a,d) : AREA (aa,dd) :AREA (b,dd) : AREAFILL 
  68.    AREA (c,d) : AREA (cc,dd) :AREA (e,dd) : AREAFILL
  69.    AREA (ee,d) : AREA (f,dd) :AREA (ff,dd) : AREAFILL
  70.    LINE (aa,dd)-(130,200),15,bf
  71.    LINE (cc,dd)-(350,200),15,bf
  72.    LINE (f,dd)-(570,200),15,bf                              
  73. neu:
  74.    LINE (250,2)-(340,22),13,bf 
  75.    LINE (250,2)-(340,22),5,b      
  76.    LINE (251,3)-(339,21),6,b
  77.    LOCATE 2,2:PRINT "Immer vom Kraftwerk zeichnen"
  78.    LOCATE 3,2:PRINT "linke Maustaste dücken+halten"           
  79.    LOCATE 2,36:PRINT "Neu"
  80.    LOCATE 2,50:PRINT "Leitungen nicht keuzen"
  81.   
  82.    IF zeichnen THEN GOSUB mausy:GOSUB fa:GOSUB far:GOSUB farb: GOSUB nocheinmal
  83.    
  84.    
  85.  mausy:
  86.   IF MOUSE(0)<>0 THEN mausy
  87.   x=MOUSE(1):y=MOUSE(2) 
  88.  nocheinmal:   
  89.   IF x>250 AND x<340 AND y>2 AND y<22 THEN GOTO zeichnen
  90.  
  91.  fa:
  92.   IF x>60 AND x<120 AND y>50 AND y<80 THEN s=5:t=5:r=5:a=MOUSE(0):x=MOUSE(1):y=MOUSE(2)
  93.   WHILE MOUSE(0)<>0
  94.   LINE(x,y)-(MOUSE(1),MOUSE(2)),r
  95.   x=MOUSE(1):y=MOUSE(2)
  96.   WEND
  97.   
  98.  far:  
  99.   IF x>280 AND x<340 AND y>50 AND y<80 THEN r=4:t=4:s=4:b=MOUSE(0):x=MOUSE(1):y=MOUSE(2)
  100.   WHILE MOUSE(0)<>0
  101.   LINE(x,y)-(MOUSE(1),MOUSE(2)),s
  102.   x=MOUSE(1):y=MOUSE(2)
  103.   WEND
  104.  
  105.  farb:    
  106.   IF x>500 AND x<560 AND y>50 AND y<80 THEN r=3:s=3:t=3:c=MOUSE(0):x=MOUSE(1):y=MOUSE(2)
  107.   WHILE MOUSE(0)<>0
  108.   LINE(x,y)-(MOUSE(1),MOUSE(2)),t
  109.   x=MOUSE(1):y=MOUSE(2)
  110.   WEND
  111.   GOTO mausy   
  112.   END
  113.  
  114.